Tools {software design tools} can check high-level design models {model checking}, using automated reasoning on structure language, to prove algorithms have no counterexamples or contradictions. Integrated-circuit design uses model checking. Systems have object operations, mappings, and relations, with assertions. Design-checkers try to find cases in which assertions are not true, so designers can exclude those cases.
Designs {contract-based design} can specify contracts between user and service provider. If user provides requisites {pre-conditions}, then service provider guarantees service will perform functions and give results {post-conditions}.
Starting with requirements, specifying functions and designing objects {responsibility-driven design} can meet requirements.
Designs {top-down design} can use modules, which contain submodules, which contain sub-submodules, and so on.
3-Computer Science-Software-Programming-Architecture
Outline of Knowledge Database Home Page
Description of Outline of Knowledge Database
Date Modified: 2022.0225